# 导包
import time
import pytest
from appium import webdriver
from appium.options.android import UiAutomator2Options
from config import *
from pages.page_01_login import LoginPage


@pytest.fixture()
def app_driver():
    # 前置：创建APP驱动
    # 配置移动端设备信息
    des_caps = {**DEVICE_CONFIG, **APP_CONFIG}
    # 初始化设备配置信息
    option = UiAutomator2Options().load_capabilities(des_caps)
    # 创建驱动对象
    driver = webdriver.Remote(APPIUM_SERVER, options=option)
    # 返回app驱动对象
    yield driver
    # 后置：退出APP驱动
    # 暂停3秒
    time.sleep(3)
    # 关闭驱动
    driver.quit()
@pytest.fixture()
def first_app_driver():
    # 前置：创建APP驱动
    # 配置移动端设备信息
    des_caps = {**DEVICE_CONFIG, **First_APP_CONFIG}
    # 初始化设备配置信息
    option = UiAutomator2Options().load_capabilities(des_caps)
    # 创建驱动对象
    driver = webdriver.Remote(APPIUM_SERVER, options=option)
    # 返回app驱动对象
    yield driver
    # 后置：退出APP驱动
    # 暂停3秒
    time.sleep(3)
    # 关闭驱动
    driver.quit()
@pytest.fixture()
def pre_login(first_app_driver):
    login_page = LoginPage(first_app_driver)
    login_page.click_agreed()
    login_page.click_mine()
    return login_page

